package com.specialized.pay.service;

import com.alipay.api.AlipayApiException;

import javax.servlet.http.HttpServletRequest;

/**
 * @Author：wangxinyu
 * @Package：com.specialized.pay.service
 * @Project：Specialized-Cloud
 * @name：PayService
 * @Date：2024/7/19 19:08
 */
public interface PayService {
    /**
     * 下单支付接口
     * @param orderCard
     * @return
     */
    String alipayTradePagePay(String orderCard) throws AlipayApiException;

    /**
     * 交易关闭
     * @param tradeNo 交易流水号
     * @throws AlipayApiException
     */
    void closeAlipayTradePagePay(String tradeNo) throws AlipayApiException;

    /**
     * 交易退款
     * @param tradeNo
     * @throws AlipayApiException
     */
    void alipayTradeRefund(String tradeNo)throws AlipayApiException;
    /**
     * 交易查询接口
     * @param TradeNo
     * @throws AlipayApiException
     */
    String alipayTradeQuery(String TradeNo) throws AlipayApiException;
    /**
     * 交易退款查询
     * @param tradeNo
     * @throws AlipayApiException
     */
    String alipayTradeFastpayRefundQuery (String tradeNo) throws AlipayApiException;

    /**
     * 异步回调
     * @param request
     * @return
     * @throws AlipayApiException
     */
    String notifyUrl(HttpServletRequest request)throws AlipayApiException;

}
